# -*- coding:utf-8 -*-
import time,datetime

now_time = int(time.time())+86400
next_day_time = now_time - (now_time- time.timezone)%86400
# 得到下一天 凌晨的时间戳 1586016000 主要是做分区表使用 from (1586016000) to (1586102400)
"""
pg 14
create table if not exists tbl_event (id varchar(20),name varchar(20),nstime bigint) partition by range(nstime);
create table if not exists tbl_event_20220318 partition of  tbl_alarm(id ,name ,nstime)  for values from (1647532800) to (1647619200);
create index if not exists tbl_event_id on tbl_event using btree(id);创建父表的索引，自表也会自动创建的 创建bigint 主要是便于过滤分区和数据 如果是字符串一样，
在单个分区里面是不起作用的
后面直接创建字表
只有sql中使用了id 就会走索引
insert into tbl_event (id ,name ,nstime ,date) values ('1647586823__1505919','1505919',1647586823),
select * from tbl_event

建立分区表时必需指定主表。
分区表和主表的 列数量，定义必须完全一致。
分区表的列可以单独增加Default值，或约束。
当用户向主表插入数据库时，系统自动路由到对应的分区，如果没有找到对应分区，则抛出错误。
指定分区约束的值（范围，LIST值），范围，LIST不能重叠，重叠的路由会卡壳。
指定分区的列必需设置成not null,如建立主表时没设置系统会自动加上。
Range分区范围为 >=最小值 and <最大值……
不支持通过更新的方法把数据从一个区移动到另外一个区，这样做会报错。如果要这样做的话需要删除原来的记录，再INSERT一条新的记录。
修改主表的字段名，字段类型时，会自动同时修改所有的分区。
TRUNCATE 主表时，会清除所有继承表分区的记录，如果要清除单个分区，请对分区进行操作。
DROP主表时会把所有子表一起给DROP掉，如果drop单个分区，请对分区进行操作。
使用psql能查看分区表的详细定义。

pg的索引有：btree, hash, GiST, and GIN 默认使用btree
"""
print next_day_time